/** * <copyright> * Copyright 1997-2002 InfoEther, LLC * under sponsorship of the Defense Advanced Research Projects Agency (DARPA). * * This program is free software; you can redistribute it and/or modify * it under the terms of the Cougaar Open Source License as published by * DARPA on the Cougaar Open Source Website (www.cougaar.org). * * THE COUGAAR SOFTWARE AND ANY DERIVATIVE SUPPLIED BY LICENSOR IS * PROVIDED 'AS IS' WITHOUT WARRANTIES OF ANY KIND, WHETHER EXPRESS OR * IMPLIED, INCLUDING (BUT NOT LIMITED TO) ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, AND WITHOUT * ANY WARRANTIES AS TO NON-INFRINGEMENT. IN NO EVENT SHALL COPYRIGHT * HOLDER BE LIABLE FOR ANY DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL * DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE OF DATA OR PROFITS, * TORTIOUS CONDUCT, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THE COUGAAR SOFTWARE. * </copyright> */ package test.net.sourceforge.pmd.rules; import net.sourceforge.pmd.PMD; import net.sourceforge.pmd.rules.ExcessivePublicCountRule; import test.net.sourceforge.pmd.testframework.RuleTst; public class ExcessivePublicCountRuleTest extends RuleTst { private ExcessivePublicCountRule rule; public void setUp() { rule = new ExcessivePublicCountRule(); } public void testSimpleOK() throws Throwable { rule.addProperty("minimum", "50"); runTestFromString(TEST1, 0, rule); } public void testSimpleBad() throws Throwable { rule.addProperty("minimum", "2"); runTestFromString(TEST2, 1, rule); } private static final String TEST1 = "public class ExcessivePublicCountRule1 {" + PMD.EOL + " public int foo;" + PMD.EOL + "}"; private static final String TEST2 = "public class ExcessivePublicCountRule2 {" + PMD.EOL + " public int foo;" + PMD.EOL + " public int bif;" + PMD.EOL + " public int baz;" + PMD.EOL + " public int bof;" + PMD.EOL + "}"; }